home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #6 / Amiga Plus CD - 2004 - No. 06.iso / AmiSoft / Comm / mail / iSpell_YamEdit.lha / iSpell_YamEdit / iSpell_YamEdit.rx < prev   
Text File  |  2004-04-12  |  2KB  |  80 lines

  1. /*
  2. $VER: iSpell_YamEdit 0.5.0
  3. */
  4. BINPATH = "iSpell:bin/"
  5. aword=ARG(1)
  6. OPTIONS RESULTS
  7. IF ~ OPEN('envvar', 'ENV:ISPELLYAM', 'R') THEN EXIT
  8. language=READLN('envvar')
  9. CLOSE('envvar')
  10. IF ~ SHOW('P', 'IRexxSpell') THEN
  11. DO
  12.  PRAGMA('S',16384)
  13.  ADDRESS COMMAND
  14.  'run <nil: >nil: 'BINPATH'iSpell -d'language' -r >nil: <nil:'
  15.  'waitforport IRexxSpell'
  16. END
  17. ADDRESS 'IRexxSpell'
  18. IF VERIFY(SUBSTR(aword,2),'ABCDEFGHIJKLMNOPQRSTUVWXYZ','M')=0
  19. THEN
  20.  'QUICKCHECK 'aword''
  21. ELSE
  22. 'QUICKCHECK 'TRANSLATE(aword,'abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')''
  23. IF result='ok' THEN EXIT
  24. 'CHECK 'aword''
  25. r=result
  26. r1=SUBSTR(r,1,1)
  27. r3=SUBSTR(r,3)
  28. IF r1='&' & WORDS(r3)>1 THEN
  29. DO
  30. rwords=SUBSTR(r3,POS(':',r3)+2)
  31.  x=0; choose=''
  32.  DO UNTIL rwords=''
  33.   x=x+1
  34.   posi=POS(',',rwords)
  35.   IF posi~=0 THEN
  36.   DO
  37.    temp.x=LEFT(rwords,posi-1)
  38.    choose=choose||temp.x'|'
  39.    rwords=SUBSTR(rwords,posi+2)
  40.   END
  41.   ELSE
  42.   DO
  43.    temp.x=rwords
  44.    choose=choose||temp.x
  45.    rwords='';nums=x
  46.   END
  47.  END
  48.  ADDRESS YAM 'REQUEST "Choose a replacement for 'aword' or an [option]" "'choose'|[Acc|Add|Can]"'
  49.  IF result=nums+1 THEN SIGNAL accept
  50.  IF result=nums+2 THEN SIGNAL addis
  51.  IF result~=0 THEN
  52.  DO
  53.   DO x=1 TO nums
  54.    IF result=x THEN nword=temp.x
  55.   END
  56.   SIGNAL ReplaceWord
  57.  END
  58. END
  59. IF r1='#' THEN ADDRESS YAM 'REQUEST "Could not find anything for 'aword' Please Choose an option:" "Accept|Add..|Cancel"'
  60. IF result=1 THEN SIGNAL accept
  61. IF result=2 THEN SIGNAL addis
  62. EXIT
  63. ReplaceWord:
  64. ADDRESS YAM
  65. MAILWRITE WINDOW 0
  66. 'WRITEEDITOR "'CURSOR left'"'
  67. DO count=1 TO LENGTH(aword)
  68. 'WRITEEDITOR "'BACKSPACE'"'
  69. END
  70. 'WRITEEDITOR "'TEXT nword'"'
  71. 'WRITEEDITOR "'CURSOR right'"'
  72. EXIT
  73. addis:
  74. ADDRESS YAM 'REQUEST "Add the word: 'aword' to iSpell user Dict.?" "_Yes|_No"'
  75. IF result=1 THEN   ADDRESS 'IRexxSpell' 'ADD 'aword
  76. EXIT
  77. accept:
  78. ADDRESS 'IRexxSpell' 'ACCEPT 'aword
  79. EXIT
  80.